package com.hundsun.documentripper.domain.dto;

import com.hundsun.documentripper.domain.pojo.File;
import com.hundsun.documentripper.domain.pojo.FileNode;
import com.hundsun.documentripper.domain.pojo.NodeContent;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.List;

/**
 * Note：
 *
 * @author ：mengjw
 * @description：文件元数据
 * @date ：Created in 2021/1/28
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FileSource extends File implements Serializable {

    private static final long serialVersionUID = 453837631639545489L;
    /**
     * 文件节点对象列表
     */
    private List<FileNode> fileNodes;
    /**
     * 节点模板展示对象列表
     */
    private List<NodeTemplateView> nodeTemplateViews;
    /**
     * 内容列表
     */
    private List<NodeContent> nodeContents;

    public static FileSource formFile(File file) {
        FileSource fileSource=new FileSource();
        fileSource.setUuid(file.getUuid());
        fileSource.setProductVersionUuid(file.getProductVersionUuid());
        fileSource.setDocumentUuid(file.getDocumentUuid());
        fileSource.setDocumentVersion(file.getDocumentVersion());
        fileSource.setName(file.getName());
        fileSource.setParentUuid(file.getParentUuid());
        fileSource.setIsFolder(file.getIsFolder());
        fileSource.setCreateUser(file.getCreateUser());
        fileSource.setCreateTime(file.getCreateTime());
        fileSource.setModifyUser(file.getModifyUser());
        fileSource.setModifyTime(file.getModifyTime());
        return fileSource;
    }

}